<%-- 
    Document   : confirmacaoCliente
    Created on : 11/03/2014, 14:55:17
    Author     : jordan
--%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*,java.sql.*"%>
<%@ page import="javax.servlet.http.*,javax.servlet.*" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Confirma Cliente</title>
    </head>
    <body>
        <c:if test="${param.retorna=='retorna'}">
            <c:redirect url="index.jsp"/>
        </c:if>
        <h1>Confirma Cliente</h1>
        <c:set var="msgError" value=""/>
        <c:set var="testeLogin" value="<%=String.valueOf(request.getParameter("login")).trim()%>"/>
        <c:if test="${empty(testeLogin)}">
            <c:set var="msgError" value="${msgError}${'20,E;'}"/>
        </c:if>
        <c:set var="testeNome" value="<%=String.valueOf(request.getParameter("nome")).trim()%>"/>
        <c:if test="${empty(testeNome)}">
            <c:set var="msgError" value="${msgError}${'19,E;'}"/>
        </c:if>
        <c:set var="testeEmail" value="<%=String.valueOf(request.getParameter("email")).trim()%>"/>
        <c:if test="${empty(testeEmail)}">
            <c:set var="msgError" value="${msgError}${'21,E;'}"/>
        </c:if>
        <c:set var="testeEnderecoBairro" value="<%=String.valueOf(request.getParameter("enderecoBairro")).trim()%>"/>
        <c:if test="${empty(testeEnderecoBairro)}">
            <c:set var="msgError" value="${msgError}${'29,E;'}"/>
        </c:if>
        <c:set var="testeEnderecoCidade" value="<%=String.valueOf(request.getParameter("enderecoCidade")).trim()%>"/>
        <c:if test="${empty(testeEnderecoCidade)}">
            <c:set var="msgError" value="${msgError}${'30,E;'}"/>
        </c:if>
        <c:set var="testeTelefoneCelular" value="<%=String.valueOf(request.getParameter("telefoneCelular")).trim()%>"/>
        <c:set var="testeTelefoneComercial" value="<%=String.valueOf(request.getParameter("telefoneComercial")).trim()%>"/>
        <c:set var="testeTelefoneResidencial" value="<%=String.valueOf(request.getParameter("telefoneResidencial")).trim()%>"/>
        <c:if test="${empty(testeTelefoneCelular)&&empty(testeTelefoneComercial)&&empty(testeTelefoneResidencial)}">
            <c:set var="msgError" value="${msgError}${'31,E;'}"/>
        </c:if>
        <c:set var="testeEnderecoCep" value="<%=String.valueOf(request.getParameter("enderecoCep")).trim()%>"/>
        <c:if test="${empty(testeEnderecoCep)}">
            <c:set var="msgError" value="${msgError}${'33,E;'}"/>
        </c:if>
        <c:if test="${param.enderecoUf=='--'}">
            <c:set var="msgError" value="${msgError}${'32,E;'}"/>
        </c:if>
        <jsp:useBean id="cliente" class="beans.Cliente" scope="session"/>
        <%--                        Classe Usuário                           --%>
        <jsp:setProperty name="cliente" property="id" param="idUsuario"/>
        <jsp:setProperty name="cliente" property="login" param="login"/>
        <jsp:setProperty name="cliente" property="nome" param="nome"/>
        <jsp:setProperty name="cliente" property="senha" param="senha"/>
        <jsp:setProperty name="cliente" property="senhaNova" param="senhaNova"/>
        <jsp:setProperty name="cliente" property="senhaConfirma" param="senhaConfirma"/>
        <jsp:setProperty name="cliente" property="email" param="email"/>
        <%--                        Classe Cliente                           --%>
        <jsp:setProperty name="cliente" property="enderecoLogradouro" param="enderecoLogradouro"/>
        <jsp:setProperty name="cliente" property="enderecoNumero" param="enderecoNumero"/>
        <jsp:setProperty name="cliente" property="enderecoComplemento" param="enderecoComplemento"/>
        <jsp:setProperty name="cliente" property="enderecoBairro" param="enderecoBairro"/>
        <jsp:setProperty name="cliente" property="enderecoCep" param="enderecoCep"/>
        <jsp:setProperty name="cliente" property="enderecoCidade" param="enderecoCidade"/>
        <jsp:setProperty name="cliente" property="enderecoUf" param="enderecoUf"/>
        <jsp:setProperty name="cliente" property="telefoneCelular" param="telefoneCelular"/>
        <jsp:setProperty name="cliente" property="telefoneComercial" param="telefoneComercial"/>
        <jsp:setProperty name="cliente" property="telefoneResidencial" param="telefoneResidencial"/>
        <c:set var="updateSenha" value="${param.senhaAtual}"/>
        <c:set var="verSenha" value="${param.senha}${param.novaSenha}${param.senhaConfirma}"/>
        <c:if test="${verSenha!= ''}">
            <c:if test="${(cliente.senha==param.senhaAtual&&param.senhaNova==param.senhaConfirma)}">
                <c:set var="updateSenha" value="${cliente.senhaNova}"/>
            </c:if>
            <c:if test="${!(cliente.senha==param.senhaAtual&&param.senhaNova==param.senhaConfirma)}">
                <c:set var="msgError" value="${msgError}${'34,E;'}"/>
            </c:if>
        </c:if>
        <c:if test="${!empty(msgError)}">
            <c:redirect url="cliente.jsp?error=${msgError}"/>
        </c:if>
        <sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver"
                           url="jdbc:mysql://localhost/coleta_seletiva"
                           user="root"/>
        <sql:update dataSource="${snapshot}" var="count">
            UPDATE  usuario
                SET login = ?, nome = ?, 
                    e_mail = ?,
                    senha = ?
                WHERE id = ?;
            <sql:param value="${cliente.login}"/>
            <sql:param value="${cliente.nome}"/>
            <sql:param value="${cliente.email}"/>
            <sql:param value="${updateSenha}"/>
            <sql:param value="${param.id}"/>
        </sql:update>   
        <c:if test="${count <= 0}">
            <c:set var="msgError" value="${msgError}${'7,E;'}"/>
        </c:if>
        <c:if test="${count > 0}">
            <c:set var="msgError" value="${msgError}${'8,S;'}"/>
        </c:if>
        <c:if test="${param.idCliente==''}">
            <sql:update dataSource="${snapshot}" var="count">
                INSERT 
                    INTO cliente 
                        (
                            id, endereco_logradouro, endereco_numero, endereco_complemento, endereco_bairro, 
                            endereco_cep, endereco_cidade, endereco_uf, telefone_celular, telefone_residencial,
                            telefone_comercial
                        ) 
                    VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);
                <sql:param value="${param.id}"/>
                <sql:param value="${cliente.enderecoLogradouro}"/>
                <sql:param value="${cliente.enderecoNumero}"/>
                <sql:param value="${cliente.enderecoComplemento}"/>
                <sql:param value="${cliente.enderecoBairro}"/>
                <sql:param value="${cliente.enderecoCep}"/>
                <sql:param value="${cliente.enderecoCidade}"/>
                <sql:param value="${cliente.enderecoUf}"/>
                <sql:param value="${cliente.telefoneCelular}"/>
                <sql:param value="${cliente.telefoneComercial}"/>
                <sql:param value="${cliente.telefoneResidencial}"/>
             </sql:update>   
            <c:if test="${count <= 0}">
                <c:set var="msgError" value="${msgError}${'9,E;'}"/>
            </c:if>
            <c:if test="${count > 0}">
                <c:set var="msgError" value="${msgError}${'10,S;'}"/>
            </c:if>
        </c:if>
        <c:if test="${param.idCliente!=''}">
            <sql:update dataSource="${snapshot}" var="count">
                UPDATE  cliente
                    SET endereco_logradouro = ?, endereco_numero = ?, endereco_complemento = ?, endereco_bairro = ?, 
                        endereco_cep = ?, endereco_cidade = ?, endereco_uf = ?, telefone_celular = ?, telefone_residencial = ?,
                        telefone_comercial = ?
                    WHERE id = ?;
                <sql:param value="${cliente.enderecoLogradouro}"/>
                <sql:param value="${cliente.enderecoNumero}"/>
                <sql:param value="${cliente.enderecoComplemento}"/>
                <sql:param value="${cliente.enderecoBairro}"/>
                <sql:param value="${cliente.enderecoCep}"/>
                <sql:param value="${cliente.enderecoCidade}"/>
                <sql:param value="${cliente.enderecoUf}"/>
                <sql:param value="${cliente.telefoneCelular}"/>
                <sql:param value="${cliente.telefoneComercial}"/>
                <sql:param value="${cliente.telefoneResidencial}"/>
                <sql:param value="${param.idCliente}"/>
             </sql:update>   
            <c:if test="${count <= 0}">
                <c:set var="msgError" value="${msgError}${'11,E;'}"/>
            </c:if>
            <c:if test="${count > 0}">
                <c:set var="msgError" value="${msgError}${'12,S;'}"/>
            </c:if>
        </c:if>
        <c:redirect url="cliente.jsp?error=${msgError}"/>
    </body>
</html>
